1. Field of Invention
This invention relates to digital signal processing. Specifically, the present invention relates to digital systems and methods for converting between the Modified Discrete Cosine Transform (MDCT) domain and the Discrete Fourier Transform (DFT) domain.
2. Description of the Related Art
Digital systems are employed in a variety of demanding applications including radar tracking and audio applications. Such applications require fast and space-efficient digital circuits that can efficiently perform complex calculations with minimal memory.
Fast, space-efficient digital circuits are particularly important in digital audio applications, where complex coding and signal modifications are common. An exemplary digital audio system includes an input device, such as a microphone, for receiving an acoustic input signal. The microphone converts the acoustic signal to a corresponding analog electrical signal. An Analog-to-Digital Converter (ADC) samples the analog signal at a predetermined sampling rate via a quantizer to yield a digital time-domain signal. The digital time-domain signal is often converted to a spectral representation (via a process called analysis), encoded, and then transmitted across a channel or stored in memory before being decoded, modified, and then converted back to a digital time-domain signal (via a process called reconstruction or synthesis). The digital time-domain signal is often converted back to an analog signal via a Digital-to-Analog Converter (DAC). A speaker or other output device then converts the resulting analog signal into an acoustic output signal.
Before signal encoding or modification, digital time-domain signals are converted to appropriate transform-domain representations. Common transform domains include the Modified Discrete Cosine Transform (MDCT) domain and the Discrete Fourier Transform (DFT) domain. To transform a digital time-domain signal to the MDCT or DFT domains, an MDCT or a DFT, respectively, is applied to the time-domain signal. To convert an MDCT or DFT signal to the time domain, an Inverse Modified Discrete Cosine Transform (IMDCT) or an Inverse Discrete Fourier Transform (IDFT) is applied to the MDCT or DFT signal, respectively. To convert between transform domains, an MDCT or a DFT signal is typically converted to the time domain before conversion to the DFT or MDCT domains, respectively. Generally, conventional methods for converting between transform domains require intermediate conversion to the time domain.
Each domain has certain properties suitable for different applications. For example, the MDCT domain facilitates coding, while the DFT domain facilitates signal modification. The MDCT domain is used in subband coding algorithms such as AC-3, MPEG Layer 3 (MP3), and MPEG-2 Advanced Audio Coder (AAC).
Audio subband coding involves separating an audio signal into different frequency bands, which are encoded separately. The bands are typically encoded at different levels of precision based on the properties of the human auditory system. Frequency components are separated via filter banks to yield different frequency subbands. Time Domain Aliasing Cancellation (TDAC) filter banks are often used to carry out this subband separation. The overall bit rate of the audio signal is often reduced by selectively adjusting the digital sample size for each subband. Subband encoding methods are effective for achieving compression of digital signals, especially when signal energy is concentrated in a portion of the frequency band. One type of TDAC filter bank outputs MDCT-domain signals; these filter banks are central to many modern compression schemes employing subband coding, such as the Advanced Audio Coding (MPEG-2 AAC) scheme.
Unfortunately, while TDAC/MDCT signal representations facilitate coding, they typically do not facilitate signal modification and/or extraction of signal magnitude and/or phase information. Unlike DFT signal modification, MDCT signal modification interferes with aliasing cancellation in synthesis filter banks, which is required for accurate conversion of an MDCT-domain signal to the time domain.
The DFT signal representation facilitates signal modification, such as time-scaling and pitch-shifting. However, use of the DFT domain for coding is problematic, as the DFT domain lacks sufficient support for critical sampling.
Critical sampling is achieved in a representation domain when the signal representation in that domain requires only as much data as there is in the time-domain input signal. In an oversampled representation, there is more data in the representation domain than in the input signal, which is counter-productive for coding, where the goal is data reduction. Critical sampling results in fewer samples and is typically preferable to oversampling for coding applications.
For the DFT domain, critical sampling can only be achieved if the digital time-domain input signal is processed in non-overlapping blocks, but this may result in blocking artifacts in the reconstructed time-domain signal due to quantization effects. Overlap-add methods for converting between the DFT domain and the time domain reduce blocking artifacts but require oversampling. Unlike the DFT domain, the MDCT domain supports critical sampling in an overlap-add framework. Consequently, the MDCT domain is often preferable to the DFT domain for coding.
Modern digital audio systems may require modification of compressed MDCT-domain audio data that has been encoded via modern subband coding schemes. Since MDCT-domain signal component modification may cause undesirable artifacts in the reconstructed signal, MDCT signals are converted to the DFT domain before modification to avoid the introduction of undesirable artifacts in the reconstructed time-domain signals. New systems and methods for enhancing digital audio signals through modification are rapidly evolving, increasing the demand for efficient systems for converting compressed MDCT data to modification domains, such as the DFT domain.
Unfortunately, current methods for converting between MDCT and DFT domains often require lengthy processing and excess memory and hardware to accommodate intermediate time-domain processing. Existing systems generally cannot convert directly from the MDCT domain to the DFT domain or visa versa.
Hence, a need exists in the art for an efficient system and method for facilitating modification of digital audio data in systems employing subband coding schemes based on the MDCT. There exists a further need for an efficient system for converting directly between MDCT signal representations and DFT signal representations. There exists a further need for a method for converting directly between any two frequency-based domains or transform domains without requiring intermediate conversion back to the time domain.